package com.vdong.interactive.course.entity.mo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

@ApiModel
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "goods_peddle")
public class GoodsPeddle {
    /**
     * 主键
     */
    @ApiModelProperty(notes = "主键")
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
     * 商品id
     */
    @ApiModelProperty(notes = "商品id")
    @Column(name = "goods_id")
    private Long goodsId;

    /**
     * 商品一级分类
     */
    @ApiModelProperty(notes = "商品一级分类")
    @Column(name = "category_id")
    private Long categoryId;

    /**
     * 商品二级分类
     */
    @ApiModelProperty(notes = "商品二级分类")
    @Column(name = "type_id")
    private Long typeId;

    /**
     * 商品一级分类
     */
    @ApiModelProperty(notes = "商品一级分类")
    @Column(name = "category_name")
    private String categoryName;

    /**
     * 商品二级分类
     */
    @ApiModelProperty(notes = "商品二级分类")
    @Column(name = "type_name")
    private String typeName;

    /**
     * 分类类型【0：课程】
     */
    @ApiModelProperty(notes = "分类类型【0：课程】")
    @Column(name = "classify_type")
    private Integer classifyType;

    /**
     * 创建时间
     */
    @ApiModelProperty(notes = "创建时间")
    @Column(name = "create_date")
    private Date createDate;

    /**
     * 修改时间
     */
    @ApiModelProperty(notes = "修改时间")
    @Column(name = "modify_date")
    private Date modifyDate;

    /**
     * 创建者
     */
    @ApiModelProperty(notes = "创建者")
    @Column(name = "create_user")
    private Long createUser;

    /**
     * 修改者
     */
    @ApiModelProperty(notes = "修改者")
    @Column(name = "modify_user")
    private Long modifyUser;

    /**
     * 平台收益比例
     */
    @ApiModelProperty(notes = "平台收益比例")
    @Column(name = "platform_profit_ratio")
    private Integer platformProfitRatio;

    /**
     * 推客收益比例
     */
    @ApiModelProperty(notes = "推客收益比例")
    @Column(name = "promoter_profit_ratio")
    private Integer promoterProfitRatio;

    /**
     * 推文链接
     */
    @ApiModelProperty(notes = "推文链接")
    @Column(name = "article_link")
    private String articleLink;

    /**
     * 审核状态【0：待审核   1：通过   2：未通过】
     */
    @ApiModelProperty(notes = "审核状态【0：待审核   1：通过   2：未通过】")
    @Column(name = "check_state")
    private Integer checkState;

    /**
     * 审核时间
     */
    @ApiModelProperty(notes = "审核时间")
    @Column(name = "check_date")
    private Date checkDate;

    /**
     * 审核备注
     */
    @ApiModelProperty(notes = "审核备注")
    @Column(name = "audit_note")
    private String auditNote;

    /**
     * 开放状态【1：上架   0：下架】
     */
    @ApiModelProperty(notes = "开放状态【1：上架   0：下架】")
    @Column(name = "open_state")
    private Integer openState;

    /**
     * 上架时间
     */
    @ApiModelProperty(notes = "上架时间")
    @Column(name = "open_date")
    private Date openDate;

    /**
     * 违规说明
     */
    @ApiModelProperty(notes = "违规说明")
    @Column(name = "illegal_note")
    private String illegalNote;

    /**
     * 处理时间
     */
    @ApiModelProperty(notes = "处理时间")
    @Column(name = "handle_date")
    private Date handleDate;

    /**
     * 平台商品id
     */
    @ApiModelProperty(notes = "平台商品id")
    @Column(name = "platform_goods_id")
    private Long platformGoodsId;

    /**
     * 是否删除
     */
    @ApiModelProperty(notes = "是否删除")
    @Column(name = "deleted")
    private Boolean deleted;

    /**
     * 是否首页展示，0：否；1：是
     */
    @ApiModelProperty("是否首页展示，0：否；1：是")
    @Column(name = "is_show")
    private Boolean isShow;

    /**
     * 提交审核时间
     */
    @ApiModelProperty(notes = "提交审核时间")
    @Column(name = "submit_date")
    private Date submitDate;

    /**
     * 作者id
     */
    @ApiModelProperty(notes = "作者id")
    @Column(name = "author_id")
    private Long authorId;

    /**
     * 作者名称
     */
    @ApiModelProperty(notes = "作者名称")
    @Column(name = "author_name")
    private String authorName;

    /**
     * 正文类型（1：图文 2: 音频 3：视频）
     */
    @ApiModelProperty(notes = "正文类型（1：图文 2: 音频 3：视频）")
    @Column(name = "sub_type")
    private Integer subType;

    /**
     * 销量
     */
    @ApiModelProperty(notes = "销量")
    @Column(name = "sales_num")
    private Integer salesNum;

    /**
     * 平台店铺id
     */
    @ApiModelProperty(notes = "平台店铺id")
    @Column(name = "platform_store_id")
    private Long platformStoreId;

    /**
     * 平台店铺名称
     */
    @ApiModelProperty(notes = "平台店铺名称")
    @Column(name = "platform_store_name")
    private String platformStoreName;

}